package mission010;

import java.util.Date;
import java.text.DecimalFormat;
import java.text.SimpleDateFormat;
import java.math.BigDecimal;
import java.util.GregorianCalendar;
import java.util.Calendar;

/**
 * @author Admin
 * @create 2019/10/22
 * @since 1.0.0
 */
import java.text.*;
import  java.util.*;
public class Test {

    public static void main(String[] args) {

//        double n,p,m;
//        double a1=100.9,b1=100.1;
//        double a=100.4,b=100.5;
//         n=Math.sin(1/5);//正弦值
//         p=Math.sqrt(1000);//平方根
//         m=Math.pow(10,2);//次方
//         a1=Math.floor(a1);//向下取整
//         b1=Math.ceil(b1);//向上取整
//         a=Math.round(a);//四舍五入
//         b=Math.round(b);//四舍五入
//
//        System.out.println(n);
//        System.out.println(p);
//        System.out.println(m);
//        System.out.println(a1);
//        System.out.println(b1);
//        System.out.println(a);
//        System.out.println(b);

//        String zf="abcdefgHIJKLMN";
//        StringBuilder zf1=new StringBuilder(zf);
//        zf1.insert(1,"M");//在a和b之间插入M，然后输出该动态字符串
//        System.out.println(zf1);
//        StringBuilder zf2=new StringBuilder(zf1);
//        zf2.insert(2,"N");//在M和b之间插入N，然后输出该动态字符串
//        System.out.println(zf2);
//        String k=new String(zf2);
//        k=(k.replace("I",""));
//        System.out.println(k);//删除I
//        String a=new String(k);
//        a=a.replace("MN","NM");
//        //System.out.println(a);//MN替换成NM
//        String a1=new String(a);
//        a1=a.replaceFirst("NM","MN");//将第一个NM替换过来
//        System.out.println(a1);
//
        Date d = new Date();//输出当前的系统时间
        SimpleDateFormat sdf=new  SimpleDateFormat("yyy年MM月dd日 HH:mm");
        String nowTime;
        nowTime=sdf.format(d);
        System.out.println(nowTime);

        // 输出从现在开始，到2030年的所有日期1号的星期一，格式为"2018年1月1日 星期一"
        Calendar calendar = new GregorianCalendar();//定义一个日历，变量作为年初
        Calendar calendarEnd = new GregorianCalendar();//定义一个日历，变量作为年末
        calendar.set(2019, 9, 23); ////设置年初的日期为10月23日
        calendarEnd.set(2030, 11, 31); //设置年末的日期为11月31日

        SimpleDateFormat sf = new SimpleDateFormat("yyyy年MM月dd日"+"星期一");

        while(calendar.getTime().getTime()<=calendarEnd.getTime().getTime()){//用一整年的日期循环
            if(calendar.get(Calendar.DAY_OF_WEEK)==2){//判断如果为星期一时，打印
                if(calendar.get(Calendar.DAY_OF_MONTH)==1){
                    System.out.println(sf.format(calendar.getTime()));
                }
            }
            calendar.add(Calendar.DAY_OF_MONTH, 1);//日期+1
        }
    }
}
